// 1. <img id="why" />
// 类型断言 as
const el = document.getElementById("why") as HTMLImageElement
el.src = "url地址"



// 2. 断言用的做多的一个地方：把一个宽泛的类型转为一个具体的类型
// Person是Student的父类
class Person {

}

class Student extends Person {
    studying() {

    }
}

function sayhello(p: Person) {
    // p.studying()
    (p as Student).studying()
}


const stu = new Student()
sayhello(stu)
// 把子类对象传给父类的引用就是多态


// 3. 不要用
// const message = 'aa'
// const num = message as any as number
// const num = message as unknown as number

// 非空类型断言
// message?->undefined|string
function printMessage(message?: string) {
    // if (message) {
    //     console.log(message.length);
    // }
    // 非空类型断言： message一定有值
    console.log(message!.length);
}

printMessage('s')
printMessage('s2')

export {}